Skip to main content

Most Engineering Hiring Processes Are Broken

· 8 min read
Alvaro Jose
Fractional CTO & Founder

Leading a team or a company necessitates having individuals who can assist in realizing your objectives. Undoubtedly, this involves establishing a hiring process. Have you considered how hiring for software projects may consume extensive time and effort?

The Average Hiring Process

Whenever I step into a company, my gaze is often drawn to their recruitment procedures. Typically, the process aligns with or forms a subset of this schematic.

average_process.png

Most companies employ these steps as filters, aiming to discover the “ideal candidate” with the least possible commitment. This turns the hiring process into a lengthy, high-effort endeavor that can span multiple months. As you can see, from application to hire, we're looking at an average of 32 days and a time investment of 15.5 hours.

In competitive markets—such as the one I'm familiar with—the top candidates are often hired within a maximum of two weeks after applying for a job. How can this be?

The Issue at hand

Over-engineering can be pinpointed as the root cause of the issue.

Here are the three main concerns that lead to this:

  • Risk Avoidance Leads to Over-Complication: Trying to avoid any slip-ups during the hiring process often results in a complicated and lengthy procedure. This method is more about reducing the risk of a bad hire, even if it sacrifices speed and efficiency.
  • Fear of Overlooking the Perfect Candidate: The worry of not finding that potentially perfect candidate leads to an exhaustive process. Every candidate is meticulously screened at each stage, lengthening the hiring period.
  • Concern Over Wasting Employee Time: The fear of spending current employee time on unsuccessful hiring processes is a worry. This concern stems from knowing that time is valuable, especially in fast-paced work environments. If the hiring process doesn't yield a successful hire, it's considered a misuse of employee time that could have been used for immediate needs and goals.

However, lengthy processes are the embodiment of these fears. The rationale is straightforward: the top candidates are often the first to be snapped up. If your hiring process is sluggish due to numerous feedback loops, chances are you're missing out on top-tier talent.

Remember, most companies aren't engaged in rocket science, which means you probably don't need a rocket scientist on your team. What you do need are team players who can collaborate effectively and add value to your product.

https://devrant.com/rants/2848905/interview-vs-job

Solving the problem

To attract and secure top-tier talent in a fast and efficient manner, it is imperative to streamline and reform our hiring process.

The objective is to create a process that is not only efficient in its operations, but also effective in securing the best possible talent for our teams. This approach must consider the existing challenges in the hiring process and devise solutions that counter these issues, while optimizing for speed and quality of hires.

To facilitate such transformation in the hiring process, we need to undertake the following steps:

Simplify Evaluation Process

The prevailing approach in many companies operates like a wishlist, confirming that candidates meet an extensive set of expectations. However, these wishlists often become an endless array of checkboxes that candidates must tick off.

A more efficient solution would be to invert this evaluation method, implementing a flagging system to identify what is unacceptable in a candidate. This method streamlines the process, as it's a true or false evaluation where we all have the same expectation. Instead of having a checklist of 100 items that can have different readings by the evaluator to be covered in 2 to 4 technically focused interviews, we're able to identify any red flags in just one or two interviews.

Let's see examples that I have seen in real life:

WishlistFlags
Coding Interview:
  • Does hexagonal architecture
  • Has done unit tests
  • Has done integration test
  • Follows SOLID principles
  • Writes Clean Code
  • Refactors when needed
  • Whiteboard Session:
  • Decouples Systems
  • Takes in count Scalability
  • Takes in count Security
  • Understands sharding
  • Understands different types of DB and their use
  • Understand evolutionary architecture
  • Technical Conversation:
  • Can explain the business of a project
  • Can explain the technical aspect of a project
  • Understands CI/CD
  • Understands testing value
  • Values Session:
  • Is an active listener
  • Understand fairness
  • Understand no blame culture
  • … | 🔴 Discriminates based on social or technical aspects. 🔴 Lies on an explanation when they don't know a subject. 🔴 Ignores feedback, continues without reflection. 🔴 Does not explain their train of though, after request. 🔴 Does not accommodate for people's needs regarding communication styles (ex. Drawing). 🟡 Makes things overcomplicated. 🟡 Is unable to explain certain aspects of what they do. 🟡 Does not execute or compile while working. 🟡 Does not do any kind of test while working. |

Here is how the simplified process looks like:

simple_process_1.png

Reduce The Feedback Loops

In line with product development, minimizing feedback loops can enhance agility.

Inserting filters into the process simply creates delay in decision-making, as feedback must be revisited before proceeding. These waiting periods regularly lead to candidates disengaging from the process.

Moreover, these filters may inadvertently prevent a potential candidate from showcasing their full potential in later stages of the process, frequently leading to premature dismissal of suitable candidates for the position.

Eliminating filters from feedback loops can accelerate the process and lessen the burden on our existing employees. By removing reporting for future steps and not discarding candidates early, candidate success rate will increase, resulting in fewer interviews in the long run.

simple_process_2.png

Final Words

In conclusion, the key to a successful hiring process lies in simplicity and efficiency. By focusing on eliminating unnecessary steps and reducing feedback loops, companies can accelerate their hiring process and attract and retain the best talent in the market.